home *** CD-ROM | disk | FTP | other *** search
/ PC Format (UK) 188 / 01-04 PC Format 188 [2006-06] DVD side 1_.iso / DiscContents / Workshops / Workshops_Games / Gamer's Internet Tunnel / Git-099b4.exe / {app} / Readme.txt < prev    next >
Text File  |  2004-10-03  |  14KB  |  250 lines

  1. Gamer's Internet Tunnel by Ark
  2.  
  3. ------------
  4. What is GIT?
  5. ------------
  6. GIT is a utility to link two LANs together for network gameplay by tunneling
  7. packets over the internet via UDP, TCP, or even through a socks proxy.
  8. It is very configurable, allowing only certain frame types, IPX packet types,
  9. IPv4 protocols, IPX socket destinations, or TCP/UDP ports to be forwarded.
  10. Unlike many other tunnel programs that send all packets over the internet, GIT
  11. is very friendly to low-bandwidth users, by not forwarding NetBIOS or other
  12. unneeded sockets by default.
  13.  
  14.  
  15. ---------------------
  16. How do I install GIT?
  17. ---------------------
  18. GIT's installer is short and straightforward, but GIT does require that the
  19. WinPcap library is installed.  WinPcap_3_0.exe is included with GIT. You should
  20. be prompted to install WinPcap at the end of the GIT installation if you do not
  21. have WinPcap v3.0 or higher installed already.  There is a shortcut to the
  22. WinPcap installer located in the Start Menu, under Program Files\GIT, in case
  23. you need to reinstall it at any time.
  24.  
  25. As of March 9, 2004, v3.0 is the latest version of WinPcap, and should work
  26. with Windows XP.  If you have trouble with GIT and are using a operating system
  27. that is newer then the latest WinPcap, you can try downloading the latest
  28. version of WinPcap from http://winpcap.polito.it/
  29.  
  30. If you experience crashes, freezes, or problems finding your packet device in
  31. GIT, follow these instructions:
  32. 1) Reboot your computer.
  33. 2) Uninstall WinPcap from control panel.
  34. 3) Reboot your computer.
  35. 4) Install WinPcap v3.0 or higher.
  36. 5) Reboot your computer.
  37.  
  38.  
  39. ------
  40. Wizard
  41. ------
  42. New in GIT v0.99 is the configuration wizard, which allows you to answer a few
  43. questions to easily set up GIT for a particular program.
  44. .git files can be run and will start GIT or talk to an existing GIT to display
  45. the wizard pages needed for that script.
  46. Please note that the Auto Configure button for the scripts will re-use all of
  47. the saved settings from the last time you ran that script, so if your IP address
  48. or any remote IP addresses have changed, you will need to run through the wizard
  49. again instead of using the Auto Configure button.
  50. See the file "Wizard Scripts.txt" for information on creating your own scripts.
  51. There is also a Save Profile option that will save all your current settings to
  52. a wizard script that you can easily restore using the wizard later. The host
  53. list can be stored as-in or the profile can create a textbox that will prompt
  54. to edit the host list when you run the profile script.
  55.  
  56.  
  57. ----------------------
  58. Quick configution tips
  59. ----------------------
  60. These steps will work assuming no firewalls or NAT gets in the way.
  61.  
  62. For TCP or UDP client-server based games:
  63.     Right click the GIT icon in the system tray and select Configuration.
  64.     Select the game you wish to play under TCP/UDP ports and click Add.
  65.  
  66.     If you are the server:
  67.         Check "Be TCP listen server and accept all connections on
  68.         the same port from any host instead."
  69.         Enter the maximum number of clients you expect in the
  70.         Max connections box.
  71.  
  72.     If you are a client:
  73.         Enter the hostname of the server in the Host or IP box.
  74.         Select method "TCP connect" then click Add.
  75.  
  76. For IPX based games:
  77.     Right click the GIT icon in the system tray and select Configuration.
  78.     Select the game you wish to play under IPX sockets and click Add.
  79.     Enter the hostname or IP of the other player in the Host or IP box.
  80.     Select method "UDP" and click Add.
  81.  
  82. -----------------
  83. How does it work?
  84. -----------------
  85. GIT puts your ethernet adaptor into promiscuous mode in order to sniff all
  86. ethernet packets and analyze which ones are part of your network game traffic.
  87. GIT then sends these packets to another instance of GIT running on the
  88. opposite LAN, which will receive the packet and broadcast it onto that LAN
  89. as if the two were physically connected.
  90. Only one computer in each LAN needs to be running GIT for the entire LANs to
  91. be linked together.
  92.  
  93.  
  94. -------------------
  95. How do I set it up?
  96. -------------------
  97. Right click on the tray icon and pick Configuration.  Add the host on the
  98. opposite LAN that is running GIT and the port it is running on, then pick a
  99. method.  UDP is the best choice of methods, since it is the fastest, but
  100. in order to pierce a firewall, TCP connect may be required for the LAN behind
  101. a firewall.  When any of the TCP connect methods are used, the opposite side
  102. must be using TCP listen in order to accept the connection.  Please note that
  103. TCP listen will only accept connections from the host listed, and will deny
  104. connections on the port to any other host.  This means the hostname must be
  105. the address of the socks proxy if a TCP connect via socks method is used.
  106.  
  107. It is also required to pick one or more IPX socket ranges, or TCP/UDP port
  108. ranges to forward, the simplest method being to just add '0000-ffff : All
  109. sockets' for IPX games, or '1025-9999 : Common ports' for TCP/UDP games, so
  110. that all sockets or ports are forwarded, but if the game you plan to play is
  111. listed, pick that game to avoid sending traffic you dont need to.
  112. You may also log (un)forwarded packets to see which sockets or ports a game is
  113. using. Please email me with known sockets of games if you are sure the
  114. information is correct.
  115.  
  116.  
  117. -------------------------------------
  118. Notes on setting up hosts connections
  119. -------------------------------------
  120. Each host must be connecting using a different port number. For example, if
  121. you wish to connect 3 hosts together to play an IPX based game, host A would
  122. connect to host B on port 213 and host C on port 214.  Host B would connect to
  123. host A on port 213 and host C on port 215. Host C would connect to host A on
  124. port 214 and host B on port 215.  This will allow for all traffic from any
  125. host to reach both of the other hosts without conflicts.
  126. Note that hostnames may be entered as names or IP addresses.
  127.  
  128. New in GIT v0.96 - for games that only require a connection to a single server,
  129. it is much easier to have the computer that will be running the game server
  130. pick "Be TCP listen server and accept all connections on the same port from any
  131. host instead." in the configuration window instead. This will allow all other
  132. clients to simply connect to the server by adding 1 host connection to the
  133. server of type TCP connect.
  134. Also new for regular TCP listen connections, if the IP specified has 0's in it,
  135. then the connection will be accepted from any IP in that subnet, instead of
  136. requiring a connection from the exact IP. For example:
  137. 111.222.33.44 - requires connection from 111.222.33.44
  138. 111.222.33.0 - accepts connections from 111.222.33.*
  139. 111.222.0.0 - accepts connections from 111.222.*.*
  140. 111.0.0.0 - accepts connections from 111.*.*.*
  141. 0.0.0.0 - accepts connections from any IP
  142.  
  143.  
  144. --------------------------------
  145. Notes specific to TCP/IP and UDP
  146. --------------------------------
  147. Since TCP, UDP, and ICMP packets are all routable over the Internet, it is
  148. normally not necessary to forward anything but broadcast UDP packets, which
  149. are not routed over the Internet.  The default option under Advanced
  150. Configuration will have "Don't Send Unicast" checked, which will make GIT only
  151. forward packets sent to addresses like 255.255.255.255.  Some games will use a
  152. mix of TCP and UDP, where the clients locate the game via UDP broadcast
  153. packets, but then connect directly to the game server via TCP.  This will work
  154. fine with GIT as long as the game server is not firewalled or using NAT.
  155. If the game server is firewalled, you must open up the game port on the
  156. firewall to allow incomming traffic to the server.  If the game server is
  157. using NAT, you can adjust for this in the Advanced Configuration window by
  158. selecting the "Alter Source IP" checkbox, and filling in the hostname or IP
  159. address of both your internal address and external address.
  160.  
  161. For example, I have seen successful setups for Warcraft 3 under all of the
  162. above connections at once.  The game server was both behind a firewall and
  163. using NAT, while the clients were also behind a firewall. The firewall on
  164. the server side was configured to allow incoming connections for port 213 (for
  165. GIT) and port 6112 (for WC3) and was set to map its internal address of
  166. 10.1.1.2 to its real external address using GIT.  Only UDP broadcast packets
  167. were tunneled with GIT. Once the clients located the WC3 server address,
  168. they connected directly to it via TCP and played normally from there.
  169.  
  170. One other thing to note in the Advanced Configuration window is the types of
  171. frames to look at.  IPv4 is almost only used in Ethernet II frames. It is
  172. possible, but highly unlikely, to use 802.2 and SNAP as well.  Older versions
  173. of GIT did not have Ethernet II checked by default, since IPX packets are
  174. typically only found in 802.2 or 802.3 frames.  You may need to go in to
  175. Advanced Configuration and check Ethernet II (as well as "Don't Send Unicast")
  176. if you had an older version of GIT.
  177.  
  178. New in GIT v0.98 are several options described here:
  179. Don't Send Unicast - This replaces the old option named "Only if broadcast" but
  180. is only enforced on the sending side of the tunnel.  Previously the option could
  181. reject packets on the receiving end of the GIT tunnel as well, but this is no
  182. longer the case.
  183. Don't Send Broadcast - This option compliments the previous option, and when
  184. combined with the previous option replaces the old option named "Receive only".
  185. This option is useful on a switched network with 2 or more copies of GIT running
  186. where GIT is forwarding unicast packets.  Check this option on all but 1 copy
  187. of GIT in order to prevent duplicate forwarding of broadcast packets from the
  188. same network.
  189. Don't Send Routable - This option prevents any packets that should be routable
  190. over the internet from being tunneled.  The only non-routable addresses that
  191. will still be tunneled are 192.168.x.x, 172.16-31.x.x, 10.x.x.x, and
  192. 169.254.x.x
  193. Also Match Source Port - This option allows the TCP/UDP port lists to forward
  194. packets if the source port matches a port in the list. Previously only the
  195. destination ports were matched, as is still the case for IPX sockets.
  196. This option should be checked on both sides of the tunnel if used.
  197. Forward ARP - This allows GIT to tunnel ARP requests and replies, in case some
  198. program requires it.
  199. Use Old Reforward Prevention Method for IPX/IPv4 Frames - Checking this option
  200. will resort to the method used up to GIT v0.97, which is to alter packets with
  201. a flag in order to not reforward them.  Not checking this option will keep
  202. track of the source MAC addresses of all packets received from the tunnel and
  203. sent to the local network.  Each MAC address is remembered for 30 seconds in
  204. order to prevent re-forwarding the same packet back that GIT had just created.
  205. Up to 256 MAC addresses can be remembered at once, otherwise packets may start
  206. getting duplicated once the table fills up.  This should be unlikely though
  207. since it requires more than 256 unique computers to all have their packets
  208. tunneled at once in less then 30 seconds.  ARP packets always use the MAC
  209. address method regardless of this setting.
  210.  
  211.  
  212. --------------------
  213. Log file information
  214. --------------------
  215. The lines in the logfiles (located in the directory GIT is in) may look like this:
  216.  
  217. (sample from forwarded.log with 0000-ffff in socket list and Log Forwarded Packets checked)
  218. [Sat May 26 12:03:17 2001] network: IEEE802.2 IPX to:00000000.ffffffffffff:87c2 from:00000000.00aa00112233:87c2 'ok'
  219. [] contains the date/time
  220. network: means the packet was sniffed from the network (incoming.log would list the host the packet was received from)
  221. IEEE802.2 is the frame type (Win9x 'auto' is usually 802.2, Novell Netware 4 and 5 default to 802.2)
  222. IPX means the packet was an IPX packet (usually only IPX and NetBIOS types are seen on a network)
  223. to: lists the IPX destination address in the form network.node:socket (in this case 87c2 is a Warcraft II IPX socket)
  224. from: lists the source of the packet
  225. 'ok' is a message stating the packet was forwarded with no problems.
  226.  
  227. (samples from unforwarded.log socket list empty and Log Unforwarded Packets checked)
  228. [Sat May 26 12:04:46 2001] network: IEEE802.2 IPX to:00000000.ffffffffffff:87c2 from:00000000.00aa00112233:87c2 'wrong socket number'
  229. [Sat May 26 12:04:46 2001] network: IEEE802.2 NetBIOS to:00000000.ffffffffffff:0553 from:00000000.00aa00112233:0553 'wrong packet type'
  230. In this case, the message is 'wrong socket number' which means that GIT is configured to forward IEEE802.2 frames and IPX packets, but not socket 87c2
  231.  
  232.  
  233. -------
  234. Warning
  235. -------
  236. Although I have not seen it happen on any of my test machines, some ethernet
  237. cards do not like, or do not support promiscuous mode.  Some may actually
  238. lock up the system or simply cause GIT to not work even though GIT thinks it
  239. is working, since it will not be receiving all network packets.
  240.  
  241. What I have seen happen, however, is the blue screen of death very frequently,
  242. which was caused by upgrading winpcap without uninstalling a older version
  243. first.  If you experience very frequent crashes, only when running GIT and
  244. playing games, uninstall ALL versions of winpcap from control panel's
  245. add/remove programs, then reboot even if it doesn't tell you to, then install
  246. the latest version of winpcap, and reboot again, even if it doesn't tell you
  247. to! That solved the crashes, but just uninstalling and reinstalling winpcap
  248. without the reboots did not!
  249.  
  250.